const mongoose = require('mongoose');
require('./Permission');
/**
 * 角色模型
 * 定义系统中的角色及其权限
 */
const roleSchema = new mongoose.Schema({
  // 角色名称，如 'admin', 'user', 'manager' 等
  name: {
    type: String,
    required: true,
    unique: true
  },
  
  // 角色描述
  description: {
    type: String,
    default: ''
  },
  
  // 角色拥有的权限列表
  permissions: [{
    type: mongoose.Schema.Types.ObjectId,
    ref: 'Permission'
  }],
  
  // 是否是系统默认角色
  isDefault: {
    type: Boolean,
    default: false
  }
}, {
  timestamps: true
});

const Role = mongoose.model('Role', roleSchema);

module.exports = Role; 